Instant chat messaging services allow one user to message another user in real-time as well as when a recipient user is offline. User information for a specific chat user, such as user availability, whether a chat message has been delivered to a user, and contents of a chat message are usually processed and maintained by a single chat server because providing the chat messaging service requires efficient maintenance and utilization of user state information. However, once a chat user has been assigned to a specific chat server, it is difficult to use a different chat server to handle a chat session of the chat user if it becomes difficult or undesirable to handle the chat session of the user using the current chat server. Not only does user information need to be migrated to the different chat server, it is desirable to minimally impact the chat session of the user that may be currently engaging in a real-time chat conversation during the migration. Therefore there exists a need for a way to migrate information and processing provided by a chat server for a chat user to a different chat server in a way that minimizes adverse impact on the chat user.